package edu.mis.modules.seat;

        import com.jfinal.core.Controller;
import com.jfinal.aop.Before;
        import com.jfinal.aop.Clear;
        import com.jfinal.core.Controller;
        import edu.mis.model.Type;
        import edu.mis.model.Seat;

/**
 * 商品控制器
 *
 */
public class SeatController extends Controller {

    static SeatService service = new SeatService();

    public void index() {
        render("seat.html");
    }

    public void list(){
        setAttr("data", service.findAllSeat());
        renderJson();
    }

    /**
     * 添加商品视图
     */
    public void add() {
        //render("add.html");  //（默认对应add.html，否则需显性指定，如render("addSeat.html")）
    }

    public void addSeat(){
        Seat seat  =  getModel(Seat.class);   //使用getModel方法获取表单值，表单中name应使用对象名.属性名，如seat.id, seat.seatQty,详见jfinal手册
        if(service.addSeat(seat)){
            setAttr("result", true);
            setAttr("msg", "添加商品成功!");
        }else{
            setAttr("result",false);
            setAttr("msg", "添加失败，商品名重复!");
        }
        renderJson();
    }

    /**
     * 修改商品信息视图（默认对应edit.html，否则需显性指定，如render("editSeatQty.html")，）
     */
    public void edit() {
        setAttr("seat", service.findSeatById(getParaToInt("id")));  //此处seat应与表单中${(seat.name)!}等中的seat保持一致。
    }

    public void updateSeat(){
        Seat seat  =  getModel(Seat.class);
        if(service.updateSeat(seat)){
            setAttr("result", true);
            setAttr("msg", "修改商品信息成功!");
        }else{
            setAttr("result", false);
        }
        renderJson();
    }



    /**
     * 商品分类视图
     */
    public void view_classify() {
        render("classify.html");
        setAttr("seat", service.findSeatById(getParaToInt("id")));  //此处seat应与表单中${(seat.name)!}等中的seat保持一致。
        setAttr("type",Type.dao.findAll());//分类前得到所有权限
    }


    /**
     * 删除商品
     * 测试访问地址：localhost:8080/seat/delete?id=1
     */
    public void delete() {
        if(service.deleteSeatById(getParaToInt("id"))){
            setAttr("result", true);
            setAttr("msg", "删除商品成功!");
        }else{
            setAttr("result", false);
        }
        renderJson();
    }
    public void view_addToCart() {
        setAttr("seat", service.findSeatById(getParaToInt("id")));  //此处seat应与表单中${(seat.name)!}等中的seat保持一致。
        render("addToCart.html");
    }

}


